﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _84方法练习
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            // Console.WriteLine(SumRange(2, 6));

            // int[] arr = { 2, 3, 9, 5, 3 };
            // RePlace(arr, 3, 4);
            // foreach (var item in arr)
            // {
            //     Console.WriteLine(item);
            // }

            // int[] arr = { 2, 3, 9, 5, 3 };
            // Console.WriteLine(Contains(arr, 9));//true

            int[] arr = { 2, 3, 9, 5, 3 };
            int[] arr2 = { 2, 4, 5 };
            Console.WriteLine(ContaisAll(arr, arr2));
        }

        //求两个整数之间所有整数累加和的方法,包括这两整数
        private static int SumRange(int min, int max)
        {
            int sum = 0;
            for (int i = min; i <= max; i++)
            {
                sum += i;
            }
            return sum;
        }

        //替换数组元素(哪个数组,什么元素,换成什么)
        private static void RePlace(int[] array, int item, int target)
        {
            for (int i = 0; i < array.Length; i++)
            {
                if (array[i] == item)
                {
                    array[i] = target;
                }
            }
        }

        //判断整数数组是否包含某个数字的方法
        //参数:一个数组和一个数字
        //返回值:布尔
        private static bool Contains(int[] array, int num)
        {
            for (int i = 0; i < array.Length; i++)
            {
                if (array[i] == num)
                {
                    return true;
                }
            }
            return false;
        }

        //判断整数数组是否包另一个(元素不重复的)数组所有元素的方法
        //ContainsAll
        //参数:两个数组
        //返回值:布尔
        private static bool ContaisAll(int[] array1, int[] array2)
        {
            for (int i = 0; i < array2.Length; i++)
            {
                if (!Contains(array1, array2[i]))//可以调用已经写好的方法来实现新的功能
                {
                    return false;
                }
            }
            return true;
        }
    }
}